<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:tns="http://schemas.datacontract.org/2004/07/SecurityService.Messages" elementFormDefault="qualified" targetNamespace="http://schemas.datacontract.org/2004/07/SecurityService.Messages" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:import schemaLocation="http://localhost:54160/ActionSecurityService.svc?xsd=xsd8" namespace="http://schemas.datacontract.org/2004/07/SecurityService.Criteria" />
  <xs:import schemaLocation="http://localhost:54160/ActionSecurityService.svc?xsd=xsd2" namespace="http://www.yourcompany.com/types/" />
  <xs:import schemaLocation="http://localhost:54160/ActionSecurityService.svc?xsd=xsd9" namespace="http://schemas.datacontract.org/2004/07/SecurityService.DataTransferObjects" />
  <xs:import schemaLocation="http://localhost:54160/ActionSecurityService.svc?xsd=xsd3" namespace="http://schemas.microsoft.com/2003/10/Serialization/Arrays" />
  <xs:complexType name="PermissionRequest">
    <xs:complexContent mixed="false">
      <xs:extension xmlns:q1="http://www.yourcompany.com/types/" base="q1:RequestBase">
        <xs:sequence>
          <xs:element xmlns:q2="http://schemas.datacontract.org/2004/07/SecurityService.Criteria" minOccurs="0" name="Criteria" nillable="true" type="q2:PermissionCriteria" />
          <xs:element minOccurs="0" name="Permission" nillable="true" type="q1:PermissionDto" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="PermissionRequest" nillable="true" type="tns:PermissionRequest" />
  <xs:complexType name="PermissionResponse">
    <xs:complexContent mixed="false">
      <xs:extension xmlns:q3="http://www.yourcompany.com/types/" base="q3:ResponseBase">
        <xs:sequence>
          <xs:element minOccurs="0" name="Permission" nillable="true" type="q3:PermissionDto" />
          <xs:element minOccurs="0" name="Permissions" nillable="true" type="q3:ArrayOfPermissionDto" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="PermissionResponse" nillable="true" type="tns:PermissionResponse" />
  <xs:complexType name="PermissionInSiteRequest">
    <xs:complexContent mixed="false">
      <xs:extension xmlns:q4="http://www.yourcompany.com/types/" base="q4:RequestBase">
        <xs:sequence>
          <xs:element xmlns:q5="http://schemas.datacontract.org/2004/07/SecurityService.Criteria" minOccurs="0" name="Criteria" nillable="true" type="q5:PermissionInSiteCriteria" />
          <xs:element xmlns:q6="http://schemas.datacontract.org/2004/07/SecurityService.DataTransferObjects" minOccurs="0" name="PermissionInSite" nillable="true" type="q6:PermissionInSiteDto" />
          <xs:element xmlns:q7="http://schemas.datacontract.org/2004/07/SecurityService.DataTransferObjects" minOccurs="0" name="PermissionInSites" nillable="true" type="q7:ArrayOfPermissionInSiteDto" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="PermissionInSiteRequest" nillable="true" type="tns:PermissionInSiteRequest" />
  <xs:complexType name="PermissionInSiteResponse">
    <xs:complexContent mixed="false">
      <xs:extension xmlns:q8="http://www.yourcompany.com/types/" base="q8:ResponseBase">
        <xs:sequence>
          <xs:element minOccurs="0" name="PerId" type="xs:int" />
          <xs:element xmlns:q9="http://schemas.datacontract.org/2004/07/SecurityService.DataTransferObjects" minOccurs="0" name="PermissionInSite" nillable="true" type="q9:PermissionInSiteDto" />
          <xs:element xmlns:q10="http://schemas.datacontract.org/2004/07/SecurityService.DataTransferObjects" minOccurs="0" name="PermissionInSites" nillable="true" type="q10:ArrayOfPermissionInSiteDto" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="PermissionInSiteResponse" nillable="true" type="tns:PermissionInSiteResponse" />
  <xs:complexType name="RoleResponse">
    <xs:complexContent mixed="false">
      <xs:extension xmlns:q11="http://www.yourcompany.com/types/" base="q11:ResponseBase">
        <xs:sequence>
          <xs:element minOccurs="0" name="Role" nillable="true" type="q11:RoleDto" />
          <xs:element minOccurs="0" name="RoleInSite" nillable="true" type="q11:ArrayOfRoleInSiteDto" />
          <xs:element minOccurs="0" name="Roles" nillable="true" type="q11:ArrayOfRoleDto" />
          <xs:element xmlns:q12="http://schemas.microsoft.com/2003/10/Serialization/Arrays" minOccurs="0" name="RolesByUsername" nillable="true" type="q12:ArrayOfstring" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="RoleResponse" nillable="true" type="tns:RoleResponse" />
  <xs:complexType name="RoleInSiteRequest">
    <xs:complexContent mixed="false">
      <xs:extension xmlns:q13="http://www.yourcompany.com/types/" base="q13:RequestBase">
        <xs:sequence>
          <xs:element xmlns:q14="http://schemas.datacontract.org/2004/07/SecurityService.Criteria" minOccurs="0" name="Criteria" nillable="true" type="q14:RoleInSiteCriteria" />
          <xs:element minOccurs="0" name="RoleInSite" nillable="true" type="q13:RoleInSiteDto" />
          <xs:element minOccurs="0" name="RoleInSites" nillable="true" type="q13:ArrayOfRoleInSiteDto" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="RoleInSiteRequest" nillable="true" type="tns:RoleInSiteRequest" />
  <xs:complexType name="RoleInSiteResponse">
    <xs:complexContent mixed="false">
      <xs:extension xmlns:q15="http://www.yourcompany.com/types/" base="q15:ResponseBase">
        <xs:sequence>
          <xs:element minOccurs="0" name="RoleInSite" nillable="true" type="q15:RoleInSiteDto" />
          <xs:element minOccurs="0" name="RoleInSites" nillable="true" type="q15:ArrayOfRoleInSiteDto" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="RoleInSiteResponse" nillable="true" type="tns:RoleInSiteResponse" />
</xs:schema>